﻿#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

//int main()
//{
//
//
//	return 0;
//}

//char* GetMemory(void)
//{
//	char p[] = "hello world";
//	return p;
//}
//void Test(void)
//{
//	char* str = NULL;
//	str = GetMemory();
//	printf(str);
//}

//int* getConcatenation(int* nums, int numsSize, int* returnSize)
//{
//    int* ret = nums;
//   
//    for (int i = 0; i < 2 * numsSize; i++)
//    {
//        if (i < numsSize)
//            *(nums + i + numsSize) = *(nums + i);
//    }
//
//    return ret;
//}
//
//int main()
//{
//    int numsSize = 0;
//    scanf("%d",&numsSize);
//    int nums[20] = { 0 };
//    int* returnSize = NULL;
//    for (int i = 0; i < numsSize; i++)
//    {
//        scanf("%d",(nums + i));
//    }
//    int* ret = getConcatenation(nums, numsSize, returnSize);
//
//    for (int i = 0; i < numsSize; i++)
//    {
//        printf("%d", *(ret + i));
//    }
//
//    return 0;
//}

//int main()
//{
//	int a = 10000;
//	FILE * pf = fopen("test.txt", "wb");
//	fwrite(&a, 4, 1, pf); //⼆进制的形式写到⽂件中
//	fclose(pf);
//	pf = NULL;
//	return 0;
//}

//int main()
//{
//	//打开文件
//	FILE* pf = fopen("test.txt", "w");//FILE文件指针
//	if (pf == NULL)
//	{
//		perror("fopen");
//		return 1;
//	}
//	//读文件
//
//	//关闭文件
//	fclose(pf);//关闭的文件不会主动置为空
//	pf = NULL;
//
//	return 0;
//}

//写字符,一个一个写入文件
//int main()
//{
//	FILE* pf = fopen("text.txt", "w");
//	if (pf == NULL)
//	{
//		perror("fopen");
//		return 1;
//	}
//	//写入文件
//	for (int i = 'a'; i <= 'z'; i++)
//	{
//		fputc(i, pf);
//	}
//	//关闭文件
//	fclose(pf);
//	pf = NULL;
//
//	return 0;
//}

//读文件，一个一个读

//int main()
//{
//	FILE* pf = fopen("text.txt", "r");
//	if (pf == NULL)
//	{
//		perror("fopen");
//		return 1;
//	}
//	//读文件,从文件里面拿数据
//	int ret = 0;
//	while ((ret = fgetc(pf)) != EOF)
//	{
//		printf("%c", ret);
//	}
//	fclose(pf);
//	pf = NULL;
//
//	return 0;
//}

//int main()
//{
//	FILE* pf= fopen("test.txt", "w");
//	if (pf == NULL)
//	{
//		perror("fopen");
//		return 1;
//	}
//
//	//写文件
//	fputs("hello world\n", pf);
//	fputs("hello world\n", pf);
//
//	fclose(pf);
//	pf = NULL;
//
//	return 0;
//}

//w写
//r读
//int main()
//{
//	FILE* pf = fopen("test.txt", "r");
//	if (pf == NULL)
//	{
//		perror("fopen");
//		return 1;
//	}
//	//读入文件（拿出文件中的数据）
//	char arr[20] = { 0 };
//	while (fgets(arr, 10, pf) != NULL)
//	{
//		printf("%s", arr);
//	}
//
//	fclose(pf);
//	pf = NULL;
//
//	return 0;
//}

int copy(char* p)
{
	FILE* pt = fopen("data_copy.txt", "w");
	if (pt == NULL)
	{
		perror("fopen");
		return 1;
	}

	fputs(p, pt);


	printf("%s", p);

	fclose(pt);
	pt = NULL;

	return 0;
}
int main()
{
	FILE* pf= fopen("data.txt", "r");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}

	char arr[20] = { 0 };
	char* ret = arr;
	while (fgets(arr, 20, pf) != NULL)
	{
		printf("%s", arr);
	}

	copy(ret);

	fclose(pf);
	pf = NULL;

	return 0;
	
}


	

